package imotech.web.mbeans;

import imotech.ejb.dao.ClienteDAO;
import imotech.ejb.dao.ImovelDAO;
import imotech.ejb.dao.VendaDAO;

import java.util.Date;

import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

@ManagedBean(name="vendaMB")
@SessionScoped
public class Venda {
	
	private Date data;
	private int clienteId;
	private int imovelId;
	private double valor;
	
	private imotech.ejb.model.Imovel imovel;
	private imotech.ejb.model.Cliente cliente;
	
	@EJB
	ImovelDAO idao;

	@EJB
	ClienteDAO cdao;
	
	@EJB
	VendaDAO vdao;
	
	public Venda() {
		// TODO Auto-generated constructor stub
	}


	public Date getData() {
		return data;
	}
	public void setData(Date data) {
		this.data = data;
	}


	public int getClienteId() {
		return clienteId;
	}
	public void setClienteId(int clienteId) {
		this.clienteId = clienteId;
	}


	public int getImovelId() {
		return imovelId;
	}
	public void setImovelId(int imovelId) {
		this.imovelId = imovelId;
	}


	public double getValor() {
		return valor;
	}
	public void setValor(double valor) {
		this.valor = valor;
	}
	

	public imotech.ejb.model.Imovel getImovel() {
		return imovel;
	}
	

	public imotech.ejb.model.Cliente getCliente() {
		return cliente;
	}
	
	
	
	public String selecionaImovel(String imovelId) {
		
		this.imovelId = Integer.parseInt(imovelId);
		this.imovel = idao.recuperar(this.imovelId);
		
		
		this.valor = imovel.getValor();
		
		return "selecionarCliente.xhtml";
	}
	
	
	public String selecionaCliente(String clienteId) {
		
		this.clienteId = Integer.parseInt(clienteId);
		this.cliente = cdao.buscarId(this.clienteId);
		
		return "cadastrar.jsp";
	}
	
	
	
	public String cadastrar() {
		
		if (this.imovel != null) {
			if (this.cliente != null) {

				imotech.ejb.model.Venda venda = new imotech.ejb.model.Venda();
				
				venda.setCliente(cliente);
				venda.setImovel(imovel);
				venda.setValor(valor);
				venda.setData(data);
				
				vdao.cadastrar(venda);
			}
		}
		
		return "";
	}
	
	public String alterarCliente() {
		return "selecionarCliente.xhtml";
	}
	
	public String alterarImovel() {
		return "selecionarImovel.xhtml";
	}
	

}
